home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS in a Box 7
/
BBS in a Box - Macintosh - Volume VII (BBS in a Box) (January 1993).iso
/
Files
/
Prog
/
M
/
MacOberon241.cpt
/
MacOberon 2.4(1)
/
MacTypes.Mod
(
.txt
)
< prev
next >
Wrap
Oberon Text
|
1991-10-17
|
2KB
|
43 lines
Syntax10.Scn.Fnt
MODULE MacTypes; (*Macintosh OS Interface Module for MacOberon 2.2, Michael Franz, 9.10.91*)
IMPORT
SYSTEM;
TYPE
PackedChar*= CHAR; (* Character Type as Element of PACKED ARRAY *)
UnpackedChar*= INTEGER; (* Macintosh Character Type *)
SignedByte*= SHORTINT; (* Any byte in memory *)
PackedByte*= SYSTEM.BYTE; (* Byte as Element of PACKED ARRAY *)
UnpackedByte*=INTEGER; (* Macintosh Byte Type is a subrange [0..255] of INTEGER *)
Fixed*= LONGINT; (* Fixed point arithmetic type *)
OSErr*= INTEGER; (* Error code *)
OSType*= LONGINT; (* File Type *)
ResType*= LONGINT; (* Resource Type *)
Data*= RECORD END; (* Base Type of Anything *)
Ptr*= POINTER- TO Data; (* Untagged blind pointer *)
Handle*= POINTER- TO RECORD p*: Ptr END; (* Untagged pointer to a master pointer *)
ProcPtr*= POINTER- TO RECORD proc: PROCEDURE END; (* Pointer to executable code *)
ProcHandle*= POINTER- TO RECORD p*: ProcPtr END;
Point*= RECORD v*, h*: INTEGER END;
Rect*= RECORD top*, left*, bottom*, right*: INTEGER END;
Str15* = ARRAY 16 OF PackedChar;
Str63* = ARRAY 64 OF PackedChar;
Str255*= ARRAY 256 OF PackedChar;
StringPtr*= POINTER- TO Str255;
StringHandle*= POINTER- TO RECORD p*: StringPtr END;
PROCEDURE - Debugger*() 0A9H, 0FFH;
PROCEDURE - DebugStr*(aStr: Str255) 0ABH, 0FFH;
PROCEDURE SetStr255*(VAR theStr255: Str255; chars: ARRAY OF CHAR);
VAR i: INTEGER; ch: CHAR;
BEGIN i:=0;
REPEAT ch:=chars[i]; INC(i); theStr255[i]:=ch UNTIL (ch = 0X) OR (i=256);
theStr255[0]:=CHR(i-1)
END SetStr255;
PROCEDURE GetStr255*(VAR theStr255: Str255; VAR chars: ARRAY OF CHAR);
VAR n: INTEGER; ch: CHAR;
BEGIN n:=ORD(theStr255[0]);
IF LEN(chars) < n THEN n:=SHORT(LEN(chars)) END;
chars[n]:=0X;
WHILE n > 0 DO ch:=theStr255[n]; DEC(n); chars[n]:=ch END
END GetStr255;
END MacTypes.